A content addressable memory (CAM) device is a storage device having an array of memory cells that can be instructed to compare the specific pattern of a comparand word with data words stored in corresponding rows of the array. During a compare operation, the comparand word is provided to the CAM array and compared with all the CAM words. For each CAM word that matches the comparand word, a corresponding match line is asserted to indicate the match result. If any of the match lines are asserted, a match flag is asserted to indicate the match condition, and a priority encoder determines the match address or index of the highest priority matching entry in the CAM array.
Typically, the match lines of the CAM array are pre-charged (e.g., to a logic high state indicative of a logic “1” value) prior to the compare operation. During the compare operation, if all CAM cells in a row match the comparand data, the CAM cells do not discharge the row's match line, which remains in its charged state to indicate a match condition for the row. Conversely, if any CAM cell in the row does not match the comparand data, the CAM cell discharges the match line (e.g., to a logic low state indicative of a logic “0” value) to indicate a mismatch condition for the row. The discharged match lines are pre-charged to the supply voltage for the next compare operation.
Variations in operating conditions (e.g., temperature) and/or load may cause the voltage level of the pre-charged match lines to undesirably fluctuate. To account for such fluctuations, the match lines are typically pre-charged to a high voltage level to ensure that the voltage of the pre-charged match lines remains at or above a detectable threshold level (e.g., so that match latches coupled to the match lines can readily distinguish between a match condition and a mismatch condition during compare operations). However, this typically requires pre-charging the match lines to a full rail voltage (e.g., to the supply voltage), and may result in significant power consumption. This power consumption increases as the size and/or density of the CAM array increases and, therefore, undesirably limits the memory size and the scalability of the CAM array. Thus, it would be desirable to reduce the power consumption associated with charging the match lines of a CAM array for compare operations.
Like reference numerals refer to corresponding parts throughout the drawing figures.